1. Technical Field
The present invention relates generally to Internet Telephony systems; and more particularly to a method and apparatus for employing aliases to determine transport addresses of Internet Telephony system Gatekeepers.
2. Related Art
Internet Protocol (IP) Telephony systems have been rapidly evolving over the past few years. In an IP telephony system, calls are routed through a packet switched Internet Protocol network (IP network). This compares to call routing in a circuit switched system, such as the Public Switched Telephone System (PSTN), in which calls are routed over dedicated circuits. In a circuit switched network, digitized information making up a call is sent in a continuous stream (when active) from a caller to a called party, and vice versa. However, in a packet switched IP Telephony system, each segment of the call is converted into IP packets, routed through the IP network, reconstructed upon exiting the IP network and then delivered to a called party.
With IP packet switching, as opposed to circuit switching, network bandwidth usage for each call may be reduced because a dedicated circuit is not created for each call. However, as is generally known, IP telephony system networks cannot presently provide the Quality of Service (QoS) that is provided by circuit switched networks. Thus, IP telephony has yet to obtain the popularity of circuit switched telephony for voice communications which require a minimal level of QoS. Nonetheless, IP telephony systems yield acceptable results in some situations, particularly those situations in which PSTN tariffs are great, e.g., international calls. An international call placed and serviced by an IP telephony system can oftentimes be made for the cost of a local phone call.
In initiating a call in an IP telephony system, a calling endpoint couples to the IP network via a source Gateway, oftentimes coupling to the source Gateway via the PSTN or another network, e.g., Local Area Network or Wide Area Network. The source Gateway then interfaces with a Gatekeeper to setup the call. The Gatekeeper sets up the call with a called endpoint, usually via a destination Gateway. The call is then routed from the caller, through the source Gateway, via the IP network to the destination Gateway, and from the destination Gateway to the called party. From the destination Gateway to the called party, the call may be routed via the PSTN. The source and destination Gateways convert the call between IP based data packets that are routed across the IP network and the circuit switched counterparts that are received from, and delivered to the endpoints via the PSTN.
In most Internet Telephony systems, the service providers route all calls through their Gatekeepers. By routing the calls through their Gatekeepers, the service provider monitors usage for billing purposes, alters IP network routes to compensate for outages and routes calls to various destination Gateways to balance load upon the destination Gateways.
The Gatekeepers perform various management functions for a group of registered endpoints (subscribers). These functions include, but are not limited to, address resolution, call admission control and bandwidth management. Each subscriber registers with a particular Gatekeeper and the Gatekeeper with which the subscriber registers services the subscriber until such time as the subscriber de-registers. In servicing the subscriber, the Gatekeeper stores a current transport address for the subscriber, which is the IP address at which the subscriber couples to the IP network. Where the subscriber couples to the IP network via a Gateway, the transport address is the IP address of the Gateway.
When one subscriber desires to call another subscriber, the calling subscriber must have the transport address of the called subscriber. However, the transport address is dynamic since the IP address of the subscriber can change from time to time, e.g., if the subscriber is assigned to a different Gateway or if the subscriber couples to the IP network at a differing location. Thus, the transport address is typically stored by a Gatekeeper servicing the called subscriber. In initiating a call, the subscriber must first access the called subscriber""s servicing Gatekeeper to determine the transport address for the called endpoint.
In order to access the called subscribers Gatekeeper, the subscriber must have the transport address of the Gatekeeper. But, the subscriber does not know the transport address of the Gatekeeper unless he is notified of such by the service provider or the called subscriber. Thus, the calling subscriber must manually determine the called subscriber""s serving Gatekeeper. While such a determination is possible, if the called party de-registers from the Gatekeeper and re-registers with another Gatekeeper, the calling subscriber must determine the new transport address. Such de-registration and re-registration operations often occur when new Gatekeepers are deployed. Thus, such a problem is recurrent.
Thus, there is a need in the art for an IP telephony system in which the transport address of each endpoint may easily be determined without requiring a manual determination of the called subscriber""s Gatekeeper.
Thus, to overcome the shortcomings of the prior systems, among other shortcomings, an Internet Protocol (IP) telephony system constructed according to the present invention cross-references transport addresses of Gatekeepers using a domain name of the IP telephony system. In one embodiment, the IP telephony system is serviced by at least one Gatekeeper and the transport address for each Gatekeeper is stored on a Domain Name Server (DNS). An A record or other suitable record may be employed within the DNS to index the transport addresses of the Gatekeepers to the IP telephony system domain name.
When a calling endpoint desires to initiate a call to a called endpoint, the calling endpoint first queries the DNS for the transport address of a Gatekeeper servicing the IP telephony system. The DNS, in response to the query, retrieves a transport address for the Gatekeeper (or multiple transport addresses for multiple Gatekeepers) and returns the transport address to the calling endpoint. When querying the DNS, the calling endpoint may use an identifier such as subscribername@Gatekeeper.ABC.domain where the user name of the called endpoint is xe2x80x9csubscribernamexe2x80x9d and the domain name of the IP telephony system is ABC.domain. Based upon the structure of the DNS query, therefore, the DNS determines that the query is for a Gatekeeper transport address and operates accordingly.
The calling endpoint then sends a Locate Request to the servicing Gatekeeper at the transport address returned by the DNS. If the Gatekeeper receiving the Locate Request services the called endpoint, it returns a transport address for the called endpoint. If not it responds accordingly. When the DNS returns multiple transport addresses, the calling endpoint may access each respective Gatekeeper before retrieving the transport address of the called endpoint. With the transport address retrieved, the calling endpoint then initiates a call to the called endpoint.
Moreover, other aspects of the present invention will become apparent with further reference to the drawings and specification which follow.